// 后端返回的数据类型
export interface ResOptions<T> {
  result?: T
  code?: number
  message?: string
  type: boolean
}
export interface CourseBaseInfo {
  id: string
  teacherId: string,
  subjectId: string,
  subjectParentId: string
  age: number
  buyCount: number
  cover: string
  description: string
  lessonNum: number
  status: string
  title: string
  viewCount: number
  price: number
}
export interface TeacherBaseInfo {
  avatar: string
  career: string
  teacherId: string
  id: string
  intro: string
  level: number
  name: string
  qualificationCqertqificateNo: string
  teacherNo: string
  teacherPhone: string
}
export interface ResultIndex {
  courseList: CourseBaseInfo[]
  teacherList: TeacherBaseInfo[]
}
export interface ResultList<T> {
  list: T[]
}
export interface Banner {
  id: string
  title: string
  imageUrl: string
  linkUrl: string
}

export interface SubjectClassification {
  subjectClassification: Subject[]
}

export interface CoursePageInfoResult {
  current: number
  hasNext: boolean
  hasPrevious: boolean
  items: CourseBaseInfo[]
  pages: number
  size: number
  total: number
}

export interface Subject {
  title: string
  key: string
  level: number
  children: Subject[]
}

export interface CourseFrontInfo {
  avatar: string
  buyCount: string
  cover: string
  description: string
  id: string
  intro: string
  lessonNum: number
  price: number
  startTime: string | null
  subjectLevelOne: string
  subjectLevelOneId: string
  subjectLevelTwo: string
  subjectLevelTwoId: string
  teacherId: string
  teacherName: string
  title: string
  viewCount: number
}
export interface Video {
  id: string
  sort: number
  startTime: string | null
  title: string
  videoSourceId: string
  price: number
}
export interface ChapterVideoList {
  id: string
  sort: number
  title: string
  children: Video[]
}

export interface CourseInfo {
  chapterVideoList: ChapterVideoList[]
  courseFrontInfo: CourseFrontInfo
  courseStatus: boolean
}

export interface Teacher {
  recodes: TeacherBaseInfo[]
  pages: number
  size: number
  total: number
  current: number
  hasNext: boolean
  hasPrevious: boolean
}

export interface TeacherInfo {
  teacher: TeacherBaseInfo
  courseList: CourseBaseInfo[]
}

export interface UserInfo {
  userInfo: any
}